package br.com.sgi.enuns;

import java.util.HashMap;
import java.util.Map;

public enum TipoRecadoEnum {

	ANIVERSARIO_MES("1","Aniversáriantes do Mês"),
	COMPROMISSO_MES("2","Compromissos do Mês"),
	ANIVERSARIO_DIA("3","Aniversáriantes do Dia"),
	COMPROMISSO_DIA("4","Compromissos do Dia");
	
	private static Map<String, TipoRecadoEnum> relations; 
	
	TipoRecadoEnum( String codigo, String descricao){
		
		this.codigo = codigo;
		this.descricao = descricao;
		
	}
	public static String getTipoRecado(String codigo) {
		for (TipoRecadoEnum campo : values()) {
			if (campo.getCodigo().equals(codigo)) {
				return campo.getDescricao();
			}
		}
		return null;
	}
	
	   /** 
     * Recupera um elemento da enum a partir de um inteiro
     * @param codigo O codigo do elemento 
     * @return Um elemento da enum ou null caso nenhum elemento 
     * seja encontrado para a descricao pesquisada. 
     */  
    public static TipoRecadoEnum getValue(String codigo) {  
      return relations.get(codigo);  
    } 

	/** 
     * Bloco estatico que popula o hashmap com as relacoes entre 
     * descricao e elementos da enum 
     */  
    static {  
    	 relations = new HashMap<String, TipoRecadoEnum>();  
      for(TipoRecadoEnum s : values()) relations.put(s.getCodigo(), s);      
    } 
	
	private String descricao;
	
	private String codigo;

	public String getDescricao() {
		return descricao;
	}

	public void setDescricao(String descricao) {
		this.descricao = descricao;
	}

	public String getCodigo() {
		return codigo;
	}

	public void setCodigo(String codigo) {
		this.codigo = codigo;
	}

}
